import 'dart:async';

import 'package:wch/generated/json/base/json_field.dart';
import 'package:wch/generated/json/patient_list.g.dart';
import 'package:wch/model/acquisition_entity.dart';
import 'dart:convert';

import 'package:wch/model/patient_label_list.dart';

@JsonSerializable()
class PatientListModel {
	String? code;
	String? msg;
	PatientListData? data;

	PatientListModel();

	factory PatientListModel.fromJson(Map<String, dynamic> json) => $PatientListModelFromJson(json);

	Map<String, dynamic> toJson() => $PatientListModelToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class PatientListData {
	int? pageIndex;
	int? pageSize;
	int? totalPage;
	int? totalCount;
	List<PatientListDataData>? data;
	int? total;
	int? current;
	dynamic records;
	int? size;
	int? pages;

	PatientListData();

	factory PatientListData.fromJson(Map<String, dynamic> json) => $PatientListDataFromJson(json);

	Map<String, dynamic> toJson() => $PatientListDataToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class PatientListDataData {
	String? id;
	int? hospitalId;
	String? hospitalName;
	int? doctorId;
	String? templateId;
	String? templateName;
	String? deviceNumber;
	String? deviceBluetoothNumber;
	String? deviceId;
	String? doctorName;
	dynamic departmentId;
	dynamic departmentName;
	dynamic text;
	List<PatientListDataDataList>? list;
	List<PatientLabelListShopLabelList>? shopLabelList;
	List<AcquisitionAcquisitionLabelList>? acquisitionLabelList;
	String? isDelete;
	String? createTime;
	String? updateTime;

	PatientListDataData();

	factory PatientListDataData.fromJson(Map<String, dynamic> json) => $PatientListDataDataFromJson(json);

	Map<String, dynamic> toJson() => $PatientListDataDataToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class PatientListDataDataList {
	String? id;
	String? sickPersonId;
	String? templateItemId;
	int? doctorId;
	int? hospitalId;
	String? name;
	String? text;
	dynamic label;
	int? type;
	String? status;
	int? sort;

	PatientListDataDataList();

	factory PatientListDataDataList.fromJson(Map<String, dynamic> json) => $PatientListDataDataListFromJson(json);

	Map<String, dynamic> toJson() => $PatientListDataDataListToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}